/*
 * Shape.h
 *
 *  Created on: Jan 5, 2014
 *      Author: nick
 */

#ifndef SPRITE_H_
#define SPRITE_H_

//Include files
#include "SDL/SDL.h"

#include <iostream>

using namespace std;

class Sprite {
	//Protected so that only child classes make access the data
protected:
	//The dot's collision box
	SDL_Rect box;

	//The velocity of the dot
	int xVel, yVel;

	int type;

public:

	Sprite();

	Sprite(int x, int y, int jump = 0);

	Sprite(const Sprite* old);

	virtual ~Sprite();

	void print();

	bool isWithin(int x, int y);

	void show(int x, int y, SDL_Surface* source, SDL_Surface* destination,
			SDL_Rect* image);

	virtual void handleInput() = 0;

	int getX();

	int getY();

	int getType();

	SDL_Rect getBox();
};

#endif /* SHAPE_H_ */
